#include <stdio.h>
#include <stdlib.h>

typedef struct 
{
    // 登录用
    char user_name[128];   // 账号
    char password[128];    // 密码
    // 学生信息
    char name[128];        // 学生姓名
    char sex[5];           // 学生性别
    int id;                 // 学生id
    int age;                // 学生年龄
    int soc;                // 学生成绩
}std;

int main(int argc, char const *argv[])
{
     // 从文件中读取字符
     FILE * fp = fopen("hello.txt","r+");
     char c = 0;
     while ((c = fgetc(fp)) != '\n')
     {
         fputc(c , stdout);
     }
     fputc(c , stdout);
 
 
     // 从文件中读取字符串
     char buf[128];
     fgets(buf , sizeof(buf) , fp);
     fputs(buf , stdout);
 
     // 从文件中读取格式化字符
     std s2[20];
     for (size_t i = 0; i < 5; i++)
     {
         fscanf(fp,"%s\t%s\t%s\t%s\t%d\t%d\t%d\n",\
             s2[i].user_name , s2[i].password , \
             s2[i].name , s2[i].sex , &s2[i].id , \
             &s2[i].age  , &s2[i].soc);
     }
 
     for (size_t i = 0; i < 5; i++)
     {
         printf( "%s\t%s\t%s\t%s\t%d\t%d\t%d\n" , \
             s2[i].user_name , s2[i].password , \
             s2[i].name , s2[i].sex , s2[i].id , \
             s2[i].age  , s2[i].soc
         );
     }
    return 0;
}
